ns('JTigers.SVPN.Vista.Plan');
// / <summary>
// / Script de control de la vista Valida Plan
// / </summary>
// / <remarks>
// / Creacion: LOG(EMP) 201209 <br />
// / </remarks>
JTigers.SVPN.Vista.Plan.ValidaPlan = function() {

	var base = this;

	base.Inicializar = function() {
		'use strict';

		$('.ui-dialog').remove();
		base.Controles.VentanaDetallePlan().remove();
		$('body').append(base.Funciones.crearVentana());

		base.Controles.validador = new His.UI.Validator({
			form : 'frmControl'
		});
		
		base.Controles.BotonBuscar().click(base.Eventos.BotonBuscarClick);
		base.Controles.GridPlanes = new His.Util.Table('#planes', {
			aaSorting : [ [ 4, "desc" ] ],
			rowHandler : base.Eventos.TablaPlanNegocioClick
		});
		base.Controles.VentanaDetallePlan().dialog({
			autoOpen : false,
			height : 550,
			width : 450,
			modal : true
		});
		base.Controles.BotonAprobar().click(base.Eventos.BotonAprobarClick);
		base.Controles.BotonRechazar().click(base.Eventos.BotonRechazarClick);
	};

	base.Controles = {
		BotonBuscar : function() {
			return $('#btnBuscar');
		},
		BotonAprobar : function() {
			return $('#btnAprobar');
		},
		BotonRechazar : function() {
			return $('#btnRechazar');
		},
		DivListado : function() {
			return $('#divListado');
		},
		VentanaDetallePlan : function() {
			return $('#ventanaPlanValida');
		},
		DivDetallePlan : function() {
			return $('#detallePlanValida');
		},
		GridPlanes : null,
		validador : null,
		messageBox : new Belcorp.Planit.UI.MessageBox()
	};

	base.Eventos = {
		AjaxBuscarPlanRespuesta : function(data) {
			if (data != null) {
				base.Controles.DivListado().empty();
				base.Controles.DivListado().html(data);
				base.Controles.GridPlanes.refresh();
			}
		},
		AjaxDetallePlanRespuesta : function(data) {
			if (data != null) {
				base.Controles.DivDetallePlan().empty();
				base.Controles.DivDetallePlan().html(data);
				$('#txtComentario').val('');
				base.Controles.VentanaDetallePlan().dialog('open');
			}
		},
		AjaxControlPlanRespuesta : function(data) {
			if (data != null) {
				base.Controles.VentanaDetallePlan().dialog('close');
				base.Invocaciones.AjaxBuscarPlan.submit();
			}
		},

		BotonBuscarClick : function() {
			'use strict';
			base.Invocaciones.AjaxBuscarPlan.form = 'frmBuscarPlan';
			base.Invocaciones.AjaxBuscarPlan.submit();
		},
		BotonAprobarClick : function() {
			'use strict';
			base.Invocaciones.AjaxControlPlan.data = {
				aprobado : true
			};
			base.Invocaciones.AjaxControlPlan.content = 'cuerpoPlan';
			base.Invocaciones.AjaxControlPlan.submit();
		},
		BotonRechazarClick : function() {
			'use strict';
			if (base.Controles.validador.isValid()) {
				base.Invocaciones.AjaxControlPlan.data = {
					aprobado : false
				};
				base.Invocaciones.AjaxControlPlan.content = 'cuerpoPlan';
				base.Invocaciones.AjaxControlPlan.submit();
			}

		},
		TablaPlanNegocioClick : function(id) {

			base.Invocaciones.AjaxDetallePlan.data = id;
			base.Invocaciones.AjaxDetallePlan.submit();
		}
	};

	base.Invocaciones = {
		AjaxBuscarPlan : new His.Util.Ajax({
			dataType : 'html',
			action : JTigers.SVPN.Config.Context.Path + 'listaPlan.html',//
			autoSubmit : false,
			onSuccess : base.Eventos.AjaxBuscarPlanRespuesta
		}),
		AjaxDetallePlan : new His.Util.Ajax({
			dataType : 'html',
			action : JTigers.SVPN.Config.Context.Path + 'detallePlan.html',//
			autoSubmit : false,
			onSuccess : base.Eventos.AjaxDetallePlanRespuesta
		}),
		AjaxControlPlan : new His.Util.Ajax(
				{
					action : JTigers.SVPN.Config.Context.Path
							+ 'registrarControl.html',//
					autoSubmit : false,
					onSuccess : base.Eventos.AjaxControlPlanRespuesta
				})
	};

	base.Funciones = {

		crearVentana : function() {

			var div = '<div id="ventanaPlanValida" title="Detalle de Plan de Negocio">'
					+ '<div id="cuerpoPlan">'
					+ '<div id="detallePlanValida"></div>'
					+ '<div id="opcionesEdicion">'
					+ '<div class="etiquetaVentana">Ingrese un Comentario</div>'
					+ '<form action="" id="frmControl">'
					+ '<textarea rows="4" cols="10" class="anchoFull validable"'
					+ 'id="txtComentario" name="comentario" validation="required true"'
					+ 'errorMessage="Ingrese un comentario"></textarea>'
					+ '</form>'
					+ '</div>'
					+ '</div>'
					+ '<table class="centrarDiv">'
					+ '<tr>'
					+ '<td>'
					+ '<button id="btnAprobar">Aprobar</button>'
					+ '<button id="btnRechazar">Rechazar</button>'
					+ '</td>'
					+ '</tr>' + '</table>' + '</div>';
			return div;
		}
	};
};